Graphics cards are consistently improving in speed and performance, but they are being outpaced by the growth of big data and, in particular, the output of remote sensing technologies. For example, point clouds returned by technologies like Light Detection and Ranging (LiDAR) are becoming increasingly important in diverse fields such as robotics, agriculture, archaeology, renewable energy, and the like where data has a spatial component. This gap requires new techniques to relax computational requirements while providing a sufficiently useful output.
Current image based level-of-detail techniques attempt to solve the above problem, however, these techniques suffer from a number of deficiencies. One such technique, image based imposters, represents an impersonated object by a textured quadrilateral positioned such that the projection of the 3D geometry onto a 2D surface produces an identical result. The fundamental failures in this technique are errors created when the camera position moves from where the imposter was originally generated. Because these errors show regions of space that should have otherwise been occluded, they are often referred to as disocclusion artifacts. FIGS. 1 and 2 illustrate an example of these disocclusions. FIG. 1 shows full fidelity data from an original camera position, while FIG. 2 illustrates imposters with disocclusions 200 resulting from a changed camera position.
Layered depth images (LDIs) attempt to reduce these parallax errors by generating a texture that stores multiple depth values per texel. As the camera moves, an incremental warping function determines which depth layer will be exposed for a given pixel. However, this technique is especially prone to sampling artifacts. While this may not be major issue for some polygonal models, missing even a single pixel for point clouds can drastically alter data. Additionally, this technique is intended to be computed offline and, therefore, cannot handle modifications made to the data during runtime.
Unlike standard imposters which use a single quadrilateral, textured depth meshes (TDMs) create a new polygonal mesh, of many fewer faces, through a voxel based sampling scheme from a particular viewpoint. However, similar to LDIs, the generation step is very slow and must be performed offline. TDMs also have a very high spatial requirement for situations where the camera position is not severely restricted.
More recently, occlusion cameras have become popular. Unlike a planar pinhole camera model, the occlusion camera model uses curved rays to inspect beyond the edges of objects, so that slightly occluded fragments are known in advance. This technique also has a few drawbacks that make it unsuitable for point clouds: first, it does not work well with data including large, sudden changes in depth information; and second, the resolution of the output image is reduced because of the multiple samples along each ray. Additionally, in the general case, it cannot guarantee that all disocclusions are resolved, especially for large movements of the camera. In light of these issues, planar pinhole camera models are also not suitable for runtime modifications of point cloud data.